package com.xhsj.user.hr.process.hrTransferJob.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xhsj.user.hr.base.BaseEntity;
import java.time.LocalDate;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.Version;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * <p>
 * hr流程_调岗申请
 * </p>
 *
 * @author liuqinghua
 * @since 2020-09-14
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("tb_hr_approval_transfer_job")
public class TbHrApprovalTransferJob extends BaseEntity<TbHrApprovalTransferJob> {

    private static final long serialVersionUID = 1L;

    /**
     * 职工id
     */
    @TableField("user_id")
    private Long userId;

    /**
     * 原部门id 外键 tb_global_organization表id
     */
    @TableField("old_department_id")
    private Long oldDepartmentId;

    /**
     * 原岗位id 外键 tb_global_organization表id
     */
    @TableField("old_position_id")
    private Long oldPositionId;

    /**
     * 原上级领导id 外键 tb_global_user 表id
     */
    @TableField("old_leader_id")
    private Long oldLeaderId;

    /**
     * 旧部门名称
     */
    @TableField("old_department_name")
    private String oldDepartmentName;

    /**
     * 旧职位名称
     */
    @TableField("old_position_name")
    private String oldPositionName;

    /**
     * 旧领导名称
     */
    @TableField("old_leader_name")
    private String oldLeaderName;

    /**
     * 新部门id 外键 tb_global_organization表id
     */
    @TableField("new_department_id")
    private Long newDepartmentId;

    /**
     * 新职位id 外键 tb_global_organization表id
     */
    @TableField("new_position_id")
    private Long newPositionId;

    /**
     * 新上级领导id 外键 tb_global_user 表id
     */
    @TableField("new_leader_id")
    private Long newLeaderId;

    /**
     * 新部门名称
     */
    @TableField("new_department_name")
    private String newDepartmentName;

    /**
     * 新职位名称
     */
    @TableField("new_position_name")
    private String newPositionName;


    /**
     * 申请原因
     */
    @TableField("reason")
    private String reason;

    /**
     * 生效日期
     */
    @TableField("effective_date")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date effectiveDate;

    /**
     * 审核信息
     */
    @TableField("node_id")
    private Long nodeId;

    /**
     * 节点名称
     */
    @TableField("node_name")
    private String nodeName;

    /**
     * 流程id 外键  tb_global_business id
     */
    @TableField("business_id")
    private Long businessId;


}
